Sol.Carmen #include <fstream> avem maxim un milion de numere...
using namespace std; ifstream f ("vot.in"); ofstream g ("vot.out"); long n,x,votm,vot,nrvoturi; votm/ vot majoritar posibil nrvoturi pentru votm vot- numarul curent citit int main() { f>>n; long i,contor=0; presupun ca primul e majoritar f>>votm; contor=1; for( i=2;i<=n;++i) { f>>vot; if(votm==vot) ++ contor; else { --contor; if(contor<0) {votm=vot;contor=1;} } } inchid fisierul ca sa pot sa-l redeschid si sa mai citesc o data numerele f.close(); redeschid fisierul pentru citire ifstream f ("vot.in"); verific daca e majoritar votm f>>n; trebuie sa-l recitesc pe n daca e specificat in enunt ca e primul in fisier for (i=1;i<=n;++i) { f>> vot; if(vot==votm) ++nrvoturi; } // atentie enunt... ce inseamna majoritar if(nrvoturi>=n/2+1) g<<votm; else g<<-1; f.close(); g.close(); return 0; }
#include <fstream>
avem maxim un milion de numere...
using namespace std;
ifstream f ("vot.in");
ofstream g ("vot.out");
long n,x,votm,vot,nrvoturi;
votm/ vot majoritar posibil
nrvoturi pentru votm
vot- numarul curent citit
int main()
{ f>>n;
long i,contor=0;
presupun ca primul e majoritar
f>>votm;
contor=1;
for( i=2;i<=n;++i)
{ f>>vot;
if(votm==vot) ++ contor;
else
{ --contor;
if(contor<0) {votm=vot;contor=1;}
}
}
inchid fisierul ca sa pot sa-l redeschid si sa mai citesc o data numerele
f.close();
redeschid fisierul pentru citire
ifstream f ("vot.in");
verific daca e majoritar votm
f>>n;
trebuie sa-l recitesc pe n daca e specificat in enunt ca e primul in fisier
for (i=1;i<=n;++i)
{ f>> vot;
if(vot==votm) ++nrvoturi;
}
// atentie enunt... ce inseamna majoritar
if(nrvoturi>=n/2+1) g<<votm;
else g<<-1;
f.close();
g.close();
return 0;
}